package com.px.device.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.px.common.annotation.Excel;
import com.px.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 航线点位信息对象 routes_point
 *
 * @author WRJ
 * @date 2024-08
 */
public class RoutesPoint extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 航线点位id */
    private Long routesPointId;

    /** 航线配置id */
    @Excel(name = "航线配置id")
    private Long routesConfigId;

    /**  */
    @Excel(name = "")
    private String coordinates;

    /**  */
    @Excel(name = "")
    private Long index;

    /**  */
    @Excel(name = "")
    private String useGlobalHeight;

    /**  */
    @Excel(name = "")
    private Long ellipsoidHeight;

    /**  */
    @Excel(name = "")
    private Long height;

    /** $column.columnComment */

    @Excel(name = "")
    private Long groundHeight;

    /**  */
    @Excel(name = "")
    private String useGlobalSpeed;

    /**  */
    @Excel(name = "")
    private Long waypointSpeed;

    /**  */
    @Excel(name = "")
    private Long gimbalPitchAngle;

    @Excel(name = "")
    private String useGlobalHeadingParam;

    @Excel(name = "")
    private String waypointHeadingMode;

    @Excel(name = "")
    private String waypointHeadingPathMode;

    public String getUseGlobalHeadingParam() {
        return useGlobalHeadingParam;
    }

    public void setUseGlobalHeadingParam(String useGlobalHeadingParam) {
        this.useGlobalHeadingParam = useGlobalHeadingParam;
    }

    public String getWaypointHeadingMode() {
        return waypointHeadingMode;
    }

    public void setWaypointHeadingMode(String waypointHeadingMode) {
        this.waypointHeadingMode = waypointHeadingMode;
    }

    public String getWaypointHeadingPathMode() {
        return waypointHeadingPathMode;
    }

    public void setWaypointHeadingPathMode(String waypointHeadingPathMode) {
        this.waypointHeadingPathMode = waypointHeadingPathMode;
    }

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Long executeHeight;

    public List<RoutesPointAction> routesPointActionList;

    public List<RoutesPointAction> getRoutesPointActionList() {
        return routesPointActionList;
    }

    public void setRoutesPointActionList(List<RoutesPointAction> routesPointActionList) {
        this.routesPointActionList = routesPointActionList;
    }

    public Long getGroundHeight() {
        return groundHeight;
    }

    public void setGroundHeight(Long groundHeight) {
        this.groundHeight = groundHeight;
    }

    public void setRoutesPointId(Long routesPointId)
    {
        this.routesPointId = routesPointId;
    }

    public Long getRoutesPointId()
    {
        return routesPointId;
    }
    public void setRoutesConfigId(Long routesConfigId)
    {
        this.routesConfigId = routesConfigId;
    }

    public Long getRoutesConfigId()
    {
        return routesConfigId;
    }
    public void setCoordinates(String coordinates)
    {
        this.coordinates = coordinates;
    }

    public String getCoordinates()
    {
        return coordinates;
    }
    public void setIndex(Long index)
    {
        this.index = index;
    }

    public Long getIndex()
    {
        return index;
    }
    public void setUseGlobalHeight(String useGlobalHeight)
    {
        this.useGlobalHeight = useGlobalHeight;
    }

    public String getUseGlobalHeight()
    {
        return useGlobalHeight;
    }
    public void setEllipsoidHeight(Long ellipsoidHeight)
    {
        this.ellipsoidHeight = ellipsoidHeight;
    }

    public Long getEllipsoidHeight()
    {
        return ellipsoidHeight;
    }
    public void setHeight(Long height)
    {
        this.height = height;
    }

    public Long getHeight()
    {
        return height;
    }
    public void setUseGlobalSpeed(String useGlobalSpeed)
    {
        this.useGlobalSpeed = useGlobalSpeed;
    }

    public String getUseGlobalSpeed()
    {
        return useGlobalSpeed;
    }
    public void setWaypointSpeed(Long waypointSpeed)
    {
        this.waypointSpeed = waypointSpeed;
    }

    public Long getWaypointSpeed()
    {
        return waypointSpeed;
    }
    public void setGimbalPitchAngle(Long gimbalPitchAngle)
    {
        this.gimbalPitchAngle = gimbalPitchAngle;
    }

    public Long getGimbalPitchAngle()
    {
        return gimbalPitchAngle;
    }
    public void setExecuteHeight(Long executeHeight)
    {
        this.executeHeight = executeHeight;
    }

    public Long getExecuteHeight()
    {
        return executeHeight;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("routesPointId", getRoutesPointId())
                .append("routesConfigId", getRoutesConfigId())
                .append("coordinates", getCoordinates())
                .append("index", getIndex())
                .append("useGlobalHeight", getUseGlobalHeight())
                .append("ellipsoidHeight", getEllipsoidHeight())
                .append("height", getHeight())
                .append("useGlobalSpeed", getUseGlobalSpeed())
                .append("waypointSpeed", getWaypointSpeed())
                .append("gimbalPitchAngle", getGimbalPitchAngle())
                .append("executeHeight", getExecuteHeight())
                .toString();
    }
}
